package com.accp.demo.mapper.pruchase;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.accp.demo.pojo.purchase.PurchaseOutStorage;

//采购退货
public interface IPurchaseOutStorageMapper {
	
	/**
	 * 新增采购退货单
	 */
	public void insert(PurchaseOutStorage pojo);
	
	/**
	 * 修改采购退货单
	 * @param pojo
	 */
	public void update(PurchaseOutStorage pojo);
	
	/**
	 * 删除采购退货单(改变单据的逻辑状态)
	 * @param billNo
	 */
	public void delete(@Param("billNo")String billNo,@Param("logicState")Integer logicState);
	
	/**
	 * 审核采购退货单
	 */
	public void updateAuditingState(@Param("billNo")String billNo,@Param("auditingState")Integer auditingState);
	
	/**
	 * 查询采购退货单
	 * @return
	 */
	public List<PurchaseOutStorage> query(@Param("first")int first,@Param("pageSize")int pageSize);
	
	/**
	 * 查询采购退货单的总行数
	 * @return
	 */
	public Integer getCount();
	
	/**
	 * 选择重新入库（由采购订单转入）修改采购订单中的未采购数量、订单单况
	 */
	public void updateOrderPodNoCountAndPoDk(@Param("fromNo")String fromNo,@Param("poDk")int poDk,@Param("podNoCount")int podNoCount);
	
	
}
